<!--
 This  code was generated from a template.  Change the
 Status value below to something other than Generated if you have
 customized this file to prevent changes from being overwritten, or use protected areas.

 <CreatedByUserName>INCODE-1\Dave</CreatedByUserName>
 <CreatedDate>7/15/2014</CreatedDate>
 <Status>Generated</Status>
-->
<UserControl x:Class="MoPlus.SolutionBuilder.WpfClient.UserControls.SolutionBuilderControl"
                    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
                    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
                    xmlns:lib="clr-namespace:MoPlus.SolutionBuilder.WpfClient.Library"
                    xmlns:vm="clr-namespace:MoPlus.ViewModel;assembly=MoPlus.ViewModel"
                    xmlns:Conventions="clr-namespace:MoPlus.ViewModel.Conventions;assembly=MoPlus.ViewModel"
                    xmlns:Diagrams="clr-namespace:MoPlus.ViewModel.Diagrams;assembly=MoPlus.ViewModel"
                    xmlns:Entities="clr-namespace:MoPlus.ViewModel.Entities;assembly=MoPlus.ViewModel"
                    xmlns:Interpreter="clr-namespace:MoPlus.ViewModel.Interpreter;assembly=MoPlus.ViewModel"
                    xmlns:Models="clr-namespace:MoPlus.ViewModel.Models;assembly=MoPlus.ViewModel"
                    xmlns:Solutions="clr-namespace:MoPlus.ViewModel.Solutions;assembly=MoPlus.ViewModel"
                    xmlns:Workflows="clr-namespace:MoPlus.ViewModel.Workflows;assembly=MoPlus.ViewModel"
                    xmlns:Settings="clr-namespace:MoPlus.SolutionBuilder.WpfClient.Library;assembly=MoPlus.SolutionBuilder.WpfClient"
                    mc:Ignorable="d" 
                    d:DesignHeight="300" d:DesignWidth="300">
	<UserControl.InputBindings>
		<KeyBinding Modifiers="Ctrl" Key="Q" Command="{Binding CancelJobsCommand}" />
	</UserControl.InputBindings>
	<UserControl.CommandBindings>
		<CommandBinding Command="Open" CanExecute="OpenCanExecute" Executed="OpenExecuted"></CommandBinding>
		<CommandBinding Command="New" CanExecute="NewCanExecute" Executed="NewExecuted"></CommandBinding>
		<CommandBinding Command="Save" CanExecute="SaveCanExecute" Executed="SaveExecuted"></CommandBinding>
		<CommandBinding Command="Delete" CanExecute="DeleteCanExecute" Executed="DeleteExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.ManageItem" CanExecute="ManageItemCanExecute" Executed="ManageItemExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.NewChildItem" CanExecute="NewChildItemCanExecute" Executed="NewChildItemExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.OpenOutputSolution" CanExecute="OpenOutputSolutionCanExecute" Executed="OpenOutputSolutionExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.UpdateOutputSolution" CanExecute="UpdateOutputSolutionCanExecute" Executed="UpdateOutputSolutionExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.CompileSolution" CanExecute="CompileSolutionCanExecute" Executed="CompileSolutionExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.SaveAs" CanExecute="SaveAsCanExecute" Executed="SaveAsExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.SaveAll" CanExecute="SaveAllCanExecute" Executed="SaveAllExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.CancelJobs" CanExecute="CancelJobsCanExecute" Executed="CancelJobsExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.Update" CanExecute="UpdateCanExecute" Executed="UpdateExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.Close" CanExecute="CloseCanExecute" Executed="CloseExecuted"></CommandBinding>
		<CommandBinding Command="vm:CustomCommands.ExplicitOpen" CanExecute="OpenCanExecute" Executed="OpenExecuted"></CommandBinding>
	</UserControl.CommandBindings>
	<UserControl.Resources>
		<ResourceDictionary>
			<ResourceDictionary.MergedDictionaries>
				<ResourceDictionary Source="../Resources/Theme.xaml" />
			</ResourceDictionary.MergedDictionaries>
			<BitmapImage x:Key="Icon_FolderOpen"   UriSource="../Resources/Images/FolderOpen.png"   />
			<BitmapImage x:Key="Icon_FolderClosed" UriSource="../Resources/Images/FolderClosed.png" />
			<BitmapImage x:Key="Icon_HelpOpen"   UriSource="../Resources/Images/HelpOpen.png"   />
			<BitmapImage x:Key="Icon_HelpClosed" UriSource="../Resources/Images/HelpClosed.png" />
			<BitmapImage x:Key="Icon_AuditPropertyClosed" UriSource="../Resources/Images/AuditPropertyClosed.png" />
			<BitmapImage x:Key="Icon_CodeTemplateClosed" UriSource="../Resources/Images/CodeTemplateClosed.png" />
			<BitmapImage x:Key="Icon_CollectionClosed" UriSource="../Resources/Images/CollectionClosed.png" />
			<BitmapImage x:Key="Icon_DatabaseSourceClosed" UriSource="../Resources/Images/DatabaseSourceClosed.png" />
			<BitmapImage x:Key="Icon_DiagramClosed" UriSource="../Resources/Images/DiagramClosed.png" />
			<BitmapImage x:Key="Icon_EntityOpen"   UriSource="../Resources/Images/EntityOpen.png"   />
			<BitmapImage x:Key="Icon_EntityClosed" UriSource="../Resources/Images/EntityClosed.png" />
			<BitmapImage x:Key="Icon_EntityReferenceClosed" UriSource="../Resources/Images/EntityReferenceClosed.png" />
			<BitmapImage x:Key="Icon_EnumerationOpen"   UriSource="../Resources/Images/EnumerationOpen.png"   />
			<BitmapImage x:Key="Icon_EnumerationClosed" UriSource="../Resources/Images/EnumerationClosed.png" />
			<BitmapImage x:Key="Icon_FeatureOpen"   UriSource="../Resources/Images/FeatureOpen.png"   />
			<BitmapImage x:Key="Icon_FeatureClosed" UriSource="../Resources/Images/FeatureClosed.png" />
			<BitmapImage x:Key="Icon_IndexOpen"   UriSource="../Resources/Images/IndexOpen.png"   />
			<BitmapImage x:Key="Icon_IndexClosed" UriSource="../Resources/Images/IndexClosed.png" />
			<BitmapImage x:Key="Icon_IndexPropertyClosed" UriSource="../Resources/Images/IndexPropertyClosed.png" />
			<BitmapImage x:Key="Icon_MethodOpen"   UriSource="../Resources/Images/MethodOpen.png"   />
			<BitmapImage x:Key="Icon_MethodClosed" UriSource="../Resources/Images/MethodClosed.png" />
			<BitmapImage x:Key="Icon_ModelOpen"   UriSource="../Resources/Images/ModelOpen.png"   />
			<BitmapImage x:Key="Icon_ModelClosed" UriSource="../Resources/Images/ModelClosed.png" />
			<BitmapImage x:Key="Icon_ModelObjectOpen"   UriSource="../Resources/Images/ModelObjectOpen.png"   />
			<BitmapImage x:Key="Icon_ModelObjectClosed" UriSource="../Resources/Images/ModelObjectClosed.png" />
			<BitmapImage x:Key="Icon_ModelPropertyClosed" UriSource="../Resources/Images/ModelPropertyClosed.png" />
			<BitmapImage x:Key="Icon_ObjectInstanceOpen"   UriSource="../Resources/Images/ObjectInstanceOpen.png"   />
			<BitmapImage x:Key="Icon_ObjectInstanceClosed" UriSource="../Resources/Images/ObjectInstanceClosed.png" />
			<BitmapImage x:Key="Icon_ParameterClosed" UriSource="../Resources/Images/ParameterClosed.png" />
			<BitmapImage x:Key="Icon_ProjectClosed" UriSource="../Resources/Images/ProjectClosed.png" />
			<BitmapImage x:Key="Icon_PropertyClosed" UriSource="../Resources/Images/PropertyClosed.png" />
			<BitmapImage x:Key="Icon_PropertyInstanceClosed" UriSource="../Resources/Images/PropertyInstanceClosed.png" />
			<BitmapImage x:Key="Icon_PropertyReferenceClosed" UriSource="../Resources/Images/PropertyReferenceClosed.png" />
			<BitmapImage x:Key="Icon_RelationshipOpen"   UriSource="../Resources/Images/RelationshipOpen.png"   />
			<BitmapImage x:Key="Icon_RelationshipClosed" UriSource="../Resources/Images/RelationshipClosed.png" />
			<BitmapImage x:Key="Icon_RelationshipPropertyClosed" UriSource="../Resources/Images/RelationshipPropertyClosed.png" />
			<BitmapImage x:Key="Icon_SolutionOpen"   UriSource="../Resources/Images/SolutionOpen.png"   />
			<BitmapImage x:Key="Icon_SolutionClosed" UriSource="../Resources/Images/SolutionClosed.png" />
			<BitmapImage x:Key="Icon_SpecTemplateClosed" UriSource="../Resources/Images/SpecTemplateClosed.png" />
			<BitmapImage x:Key="Icon_StageOpen"   UriSource="../Resources/Images/StageOpen.png"   />
			<BitmapImage x:Key="Icon_StageClosed" UriSource="../Resources/Images/StageClosed.png" />
			<BitmapImage x:Key="Icon_StageTransitionClosed" UriSource="../Resources/Images/StageTransitionClosed.png" />
			<BitmapImage x:Key="Icon_StateOpen"   UriSource="../Resources/Images/StateOpen.png"   />
			<BitmapImage x:Key="Icon_StateClosed" UriSource="../Resources/Images/StateClosed.png" />
			<BitmapImage x:Key="Icon_StateModelOpen"   UriSource="../Resources/Images/StateModelOpen.png"   />
			<BitmapImage x:Key="Icon_StateModelClosed" UriSource="../Resources/Images/StateModelClosed.png" />
			<BitmapImage x:Key="Icon_StateTransitionClosed" UriSource="../Resources/Images/StateTransitionClosed.png" />
			<BitmapImage x:Key="Icon_StepOpen"   UriSource="../Resources/Images/StepOpen.png"   />
			<BitmapImage x:Key="Icon_StepClosed" UriSource="../Resources/Images/StepClosed.png" />
			<BitmapImage x:Key="Icon_StepTransitionClosed" UriSource="../Resources/Images/StepTransitionClosed.png" />
			<BitmapImage x:Key="Icon_ValueClosed" UriSource="../Resources/Images/ValueClosed.png" />
			<BitmapImage x:Key="Icon_WorkflowOpen"   UriSource="../Resources/Images/WorkflowOpen.png"   />
			<BitmapImage x:Key="Icon_WorkflowClosed" UriSource="../Resources/Images/WorkflowClosed.png" />
			<BitmapImage x:Key="Icon_XmlSourceClosed" UriSource="../Resources/Images/XmlSourceClosed.png" />
			<Style x:Key="IconImageStyleSmall" TargetType="Image">
				<Setter Property="MaxWidth" Value="16"/>
				<Setter Property="MaxHeight" Value="16"/>
				<Setter Property="Margin" Value="0,0,0,0"/>
			</Style>
			<Style x:Key="TreeViewItemTextStyle" TargetType="{x:Type TextBlock}">
				<Setter Property="Text" Value="{Binding Name, Mode=OneWay}" />
				<Setter Property="Foreground" Value="Gray" />
				<Setter Property="Padding" Value="5,0,4,0" />
				<Setter Property="Margin" Value="0" />
				<Style.Triggers>
					<DataTrigger Binding="{Binding IsSelected}" Value="True">
						<Setter Property="TreeViewItem.FontWeight" Value="Bold" />
					</DataTrigger>
					<DataTrigger Binding="{Binding HasCustomizations}" Value="True">
						<Setter Property="Foreground" Value="Black" />
					</DataTrigger>
					<DataTrigger Binding="{Binding HasErrors}" Value="True">
						<Setter Property="Foreground" Value="Red" />
					</DataTrigger>
				</Style.Triggers>
			</Style>
			<Style x:Key="TemplateTreeViewItemTextStyle" TargetType="{x:Type TextBlock}">
				<Setter Property="Text" Value="{Binding Name, Mode=OneWay}" />
				<Setter Property="Foreground" Value="Gray" />
				<Setter Property="Padding" Value="5,0,4,0" />
				<Setter Property="Margin" Value="0" />
				<Style.Triggers>
					<DataTrigger Binding="{Binding IsSelected}" Value="True">
						<Setter Property="TreeViewItem.FontWeight" Value="Bold" />
					</DataTrigger>
					<DataTrigger Binding="{Binding HasCustomizations}" Value="True">
						<Setter Property="Foreground" Value="Black" />
					</DataTrigger>
					<DataTrigger Binding="{Binding IsTemplateUtilized}" Value="True">
						<Setter Property="Foreground" Value="Green" />
					</DataTrigger>
					<DataTrigger Binding="{Binding HasErrors}" Value="True">
						<Setter Property="Foreground" Value="Red" />
					</DataTrigger>
				</Style.Triggers>
			</Style>
			<!-- AuditProperties -->
			<HierarchicalDataTemplate DataType="{x:Type Solutions:AuditPropertiesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewAuditProperty}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- AuditProperty -->
			<DataTemplate DataType="{x:Type Solutions:AuditPropertyViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_AuditPropertyClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewAuditProperty}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- CodeTemplates -->
			<HierarchicalDataTemplate DataType="{x:Type Interpreter:CodeTemplatesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TemplateTreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewCodeTemplate}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- CodeTemplate -->
			<DataTemplate DataType="{x:Type Interpreter:CodeTemplateViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_CodeTemplateClosed}" />
					<TextBlock ToolTip="{Binding ToolTipText, Mode=OneWay}" Style="{DynamicResource TemplateTreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewCodeTemplate}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Collections -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:CollectionsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewCollection}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Collection -->
			<DataTemplate DataType="{x:Type Entities:CollectionViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_CollectionClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewCollection}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Diagrams -->
			<HierarchicalDataTemplate DataType="{x:Type Diagrams:DiagramsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewDiagram}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Diagram -->
			<DataTemplate DataType="{x:Type Diagrams:DiagramViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_DiagramClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewDiagram}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Entity -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:EntityViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_EntityClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewEntity}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_EntityOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- EntityReferences -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:EntityReferencesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewEntityReference}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- EntityReference -->
			<DataTemplate DataType="{x:Type Entities:EntityReferenceViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_EntityReferenceClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewEntityReference}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Enumerations -->
			<HierarchicalDataTemplate DataType="{x:Type Models:EnumerationsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewEnumeration}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Enumeration -->
			<HierarchicalDataTemplate DataType="{x:Type Models:EnumerationViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_EnumerationClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewEnumeration}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewValue}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_EnumerationOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Features -->
			<HierarchicalDataTemplate DataType="{x:Type Solutions:FeaturesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewFeature}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Feature -->
			<HierarchicalDataTemplate DataType="{x:Type Solutions:FeatureViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FeatureClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewFeature}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewEntity}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FeatureOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Indexes -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:IndexesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewIndex}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Index -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:IndexViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_IndexClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewIndex}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewIndexProperty}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_IndexOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- IndexProperty -->
			<DataTemplate DataType="{x:Type Entities:IndexPropertyViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_IndexPropertyClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewIndexProperty}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Methods -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:MethodsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewMethod}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Method -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:MethodViewModel}" ItemsSource="{Binding CustomItems, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_MethodClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewMethod}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewParameter}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_MethodOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Models -->
			<HierarchicalDataTemplate DataType="{x:Type Models:ModelsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewModel}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Model -->
			<HierarchicalDataTemplate DataType="{x:Type Models:ModelViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_ModelClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewModel}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_ModelOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- ModelObjects -->
			<HierarchicalDataTemplate DataType="{x:Type Models:ModelObjectsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewModelObject}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- ModelObject -->
			<HierarchicalDataTemplate DataType="{x:Type Models:ModelObjectViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_ModelObjectClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewModelObject}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewModelProperty}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_ModelObjectOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- ModelProperty -->
			<DataTemplate DataType="{x:Type Models:ModelPropertyViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_ModelPropertyClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewModelProperty}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- ObjectInstance -->
			<HierarchicalDataTemplate DataType="{x:Type Models:ObjectInstanceViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_ObjectInstanceClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewObjectInstance}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewPropertyInstance}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_ObjectInstanceOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Parameter -->
			<DataTemplate DataType="{x:Type Entities:ParameterViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_ParameterClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewParameter}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Projects -->
			<HierarchicalDataTemplate DataType="{x:Type Solutions:ProjectsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewProject}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Project -->
			<DataTemplate DataType="{x:Type Solutions:ProjectViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_ProjectClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewProject}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Properties -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:PropertiesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewProperty}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Property -->
			<DataTemplate DataType="{x:Type Entities:PropertyViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_PropertyClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewProperty}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- PropertyInstance -->
			<DataTemplate DataType="{x:Type Models:PropertyInstanceViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_PropertyInstanceClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewPropertyInstance}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- PropertyReferences -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:PropertyReferencesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewPropertyReference}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- PropertyReference -->
			<DataTemplate DataType="{x:Type Entities:PropertyReferenceViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_PropertyReferenceClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewPropertyReference}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Relationships -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:RelationshipsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewRelationship}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Relationship -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:RelationshipViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_RelationshipClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewRelationship}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewRelationshipProperty}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_RelationshipOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- RelationshipProperty -->
			<DataTemplate DataType="{x:Type Entities:RelationshipPropertyViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_RelationshipPropertyClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewRelationshipProperty}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Solutions -->
			<HierarchicalDataTemplate DataType="{x:Type Solutions:SolutionsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<!-- region protected -->
							<MenuItem Header="{Binding MenuLabelNewSolution}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelOpenSolution}" Command="Open"></MenuItem>
							<MenuItem Header="{Binding MenuLabelRecentSolutions}" ItemsSource="{Binding RecentSolutions, Mode=OneWay}">
								<MenuItem.ItemContainerStyle>
									<Style TargetType="MenuItem" BasedOn="{StaticResource SubMenuLeafItem}">
										<Setter Property="Header" Value="{Binding Header}"/>
										<Setter Property="Command" Value="vm:CustomCommands.ExplicitOpen"/>
										<Setter Property="CommandParameter" Value="{Binding RecentSolutionLocation}"/>
									</Style>
								</MenuItem.ItemContainerStyle>
							</MenuItem>
							<MenuItem Header="{Binding MenuLabelSaveAll}" Command="vm:CustomCommands.SaveAll"></MenuItem>
							<MenuItem Header="{Binding MenuLabelCancelJobs}" Command="vm:CustomCommands.CancelJobs"></MenuItem>
							<!-- endregion protected -->
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Solution -->
			<HierarchicalDataTemplate DataType="{x:Type Solutions:SolutionViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_SolutionClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<!-- region protected -->
							<MenuItem Header="{Binding MenuLabelNewSolution}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelOpenSolution}" Command="Open"></MenuItem>
							<MenuItem Header="{Binding MenuLabelRecentSolutions}" ItemsSource="{Binding RecentSolutions, Mode=OneWay}">
								<MenuItem.ItemContainerStyle>
									<Style TargetType="MenuItem" BasedOn="{StaticResource SubMenuLeafItem}">
										<Setter Property="Header" Value="{Binding Header}"/>
										<Setter Property="Command" Value="vm:CustomCommands.ExplicitOpen"/>
										<Setter Property="CommandParameter" Value="{Binding RecentSolutionLocation}"/>
									</Style>
								</MenuItem.ItemContainerStyle>
							</MenuItem>
							<MenuItem Header="{Binding MenuLabelOpenOutputSolution}" Command="vm:CustomCommands.OpenOutputSolution"></MenuItem>
							<MenuItem Header="{Binding MenuLabelUpdateOutputSolution}" Command="vm:CustomCommands.UpdateOutputSolution"></MenuItem>
							<MenuItem Header="{Binding MenuLabelCompileSpecificationSourceData}" Command="vm:CustomCommands.CompileSolution"></MenuItem>
							<MenuItem Header="{Binding MenuLabelSave}" Command="Save"></MenuItem>
							<MenuItem Header="{Binding MenuLabelSaveAs}" Command="vm:CustomCommands.SaveAs"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelClose}" Command="vm:CustomCommands.Close"></MenuItem>
							<MenuItem Header="{Binding MenuLabelManageTags}" Command="vm:CustomCommands.ManageItem"></MenuItem>
							<!-- endregion protected -->
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_SolutionOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- SpecTemplates -->
			<HierarchicalDataTemplate DataType="{x:Type Interpreter:SpecTemplatesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TemplateTreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewSpecTemplate}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- SpecTemplate -->
			<DataTemplate DataType="{x:Type Interpreter:SpecTemplateViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_SpecTemplateClosed}" />
					<TextBlock ToolTip="{Binding ToolTipText, Mode=OneWay}" Style="{DynamicResource TemplateTreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewSpecTemplate}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Stage -->
			<HierarchicalDataTemplate DataType="{x:Type Workflows:StageViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_StageClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewStage}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_StageOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- StageTransitions -->
			<HierarchicalDataTemplate DataType="{x:Type Workflows:StageTransitionsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewStageTransition}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- StageTransition -->
			<DataTemplate DataType="{x:Type Workflows:StageTransitionViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_StageTransitionClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewStageTransition}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- State -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:StateViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_StateClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewState}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewStateTransition}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_StateOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- StateModels -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:StateModelsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewStateModel}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- StateModel -->
			<HierarchicalDataTemplate DataType="{x:Type Entities:StateModelViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_StateModelClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewStateModel}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewState}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_StateModelOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- StateTransition -->
			<DataTemplate DataType="{x:Type Entities:StateTransitionViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_StateTransitionClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewStateTransition}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Steps -->
			<HierarchicalDataTemplate DataType="{x:Type Workflows:StepsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewStep}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Step -->
			<HierarchicalDataTemplate DataType="{x:Type Workflows:StepViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_StepClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewStep}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewStepTransition}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_StepOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- StepTransition -->
			<DataTemplate DataType="{x:Type Workflows:StepTransitionViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_StepTransitionClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewStepTransition}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Value -->
			<DataTemplate DataType="{x:Type Models:ValueViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_ValueClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewValue}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- Workflows -->
			<HierarchicalDataTemplate DataType="{x:Type Workflows:WorkflowsViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewWorkflow}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- Workflow -->
			<HierarchicalDataTemplate DataType="{x:Type Workflows:WorkflowViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_WorkflowClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewWorkflow}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewStage}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_WorkflowOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- region protected -->
			<!-- model data -->
			<HierarchicalDataTemplate DataType="{x:Type Models:ModelDataViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- model object data -->
			<HierarchicalDataTemplate DataType="{x:Type Models:ModelObjectDataViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewObjectInstance}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- property instance collection data -->
			<HierarchicalDataTemplate DataType="{x:Type Models:PropertyInstanceCollectionViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewPropertyInstance}" Command="New"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- specification sources -->
			<HierarchicalDataTemplate DataType="{x:Type Solutions:SpecificationSourcesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewDatabaseSource}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelNewXmlSource}" Command="vm:CustomCommands.NewChildItem"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<!-- database specification source -->
			<DataTemplate DataType="{x:Type Solutions:DatabaseSourceViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_DatabaseSourceClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewDatabaseSource}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- xml specification source -->
			<DataTemplate DataType="{x:Type Solutions:XmlSourceViewModel}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_XmlSourceClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelNewXmlSource}" Command="New"></MenuItem>
							<MenuItem Header="{Binding MenuLabelEdit}" Command="vm:CustomCommands.Update"></MenuItem>
							<MenuItem Header="{Binding MenuLabelDelete}" Command="Delete"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
			</DataTemplate>
			<!-- endregion protected -->
			<!-- resources -->
			<HierarchicalDataTemplate DataType="{x:Type Conventions:ResourcesViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_FolderClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_FolderOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<HierarchicalDataTemplate DataType="{x:Type Conventions:HelpViewModel}" ItemsSource="{Binding Items, Mode=OneWay}">
				<StackPanel Orientation="Horizontal">
					<Image x:Name="nodeImg" Style="{StaticResource IconImageStyleSmall}" Source="{StaticResource Icon_HelpClosed}" />
					<TextBlock Style="{DynamicResource TreeViewItemTextStyle}" />
					<StackPanel.ContextMenu>
						<ContextMenu>
							<MenuItem Header="{Binding MenuLabelShow}" Command="vm:CustomCommands.Update"></MenuItem>
						</ContextMenu>
					</StackPanel.ContextMenu>
				</StackPanel>
				<HierarchicalDataTemplate.Triggers>
					<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=lib:ModelTreeViewItem}, Path=IsExpanded}" Value="True">
						<Setter TargetName="nodeImg" Property="Source" Value="{Binding Source={StaticResource Icon_HelpOpen}, Mode=OneTime}"/>
					</DataTrigger>
				</HierarchicalDataTemplate.Triggers>
			</HierarchicalDataTemplate>
			<ObjectDataProvider x:Key="builderVM" ObjectType="{x:Type vm:BuilderViewModel}" />
		</ResourceDictionary>
	</UserControl.Resources>
	<Grid>
		<Grid.RowDefinitions>
			<RowDefinition Height="*"/>
			<RowDefinition Height="Auto"/>
		</Grid.RowDefinitions>
		<Grid Grid.Row="0" RenderTransformOrigin="0.5,0.5">
			<Grid.LayoutTransform>
				<TransformGroup>
					<ScaleTransform ScaleY="{Binding Path=Value, ElementName=slider}" ScaleX="{Binding Path=Value, ElementName=slider}"/>
				</TransformGroup>
			</Grid.LayoutTransform>
			<lib:ModelTreeView x:Name="solutionsModel" AllowDrop="True" VirtualizingStackPanel.IsVirtualizing="True" VirtualizingStackPanel.VirtualizationMode="Recycling" ItemsSource="{Binding Items, Mode=OneWay}" PreviewMouseRightButtonDown="OnPreviewMouseRightButtonDown" Loaded="solutionsModel_Loaded" />
		</Grid>
		<Slider x:Name="slider" Grid.Row="1" Minimum=".75" Maximum="5" Value="{Binding Source={x:Static Settings:UserSettingsHelper.Instance}, Path=ControlSize, Mode=TwoWay}"/>
	</Grid>
</UserControl>